The ‘smart revolution’ has made significant changes in all aspects of modern lives including communications, business, health services and education. From smart phones, smart watches and smart cars to smart homes and smart cities, an increasing number of smart devices are being massively used and changing the ways we communicate, exchange information, make business, travel and spend leisure time.
With the advent of these web-enabled and connected devices, there is a growing need for more system capacity improvements to meet the needs of end users. Multiple-input multiple-output (MIMO) technologies were developed to increase such system capacity and offer better link reliability.
The promise of high data throughput and improved coverage range, reliability and performance is achieved by MIMO systems through the use of multiple transmit and receive antennas for communicating data streams. The use of a multiplicity of transmit and receive antennas increases immunity to propagation effects comprising interference, signal fading and multipath. These key potential benefits of MIMO technologies make them ideal candidates in many wired, wireless and optical communication systems applied for example in local and wide area networks. Local area network applications comprise the Wi-Fi standard. Exemplary applications in wide area networks comprise cellular mobile networks as standardized in 3G, 4G, LTE and future 5G.
Single user wireless MIMO systems form the basic configurations of multiple antenna technologies. They comprise a pair of transmitter/receiver each equipped with a multiplicity of antennas. At the transmitter side, a Space-Time (ST) encoder may be implemented to encode and transmit the different streams carrying original data in the form of information symbols through the different transmit antennas during different time slots. At the receiver side, a Space-Time decoder may be implemented to decode the conveyed signals from the transmitter in order to recover the original data.
In addition to the single user wireless MIMO configurations, Space-Time coding and decoding techniques may be implemented in wireless transceivers operating in multiple user networks. Exemplary applications of wireless multiuser MIMO systems comprise cellular communications and wireless sensor networks used for example in smart homes. In such applications, ST coding and decoding techniques may be combined with multiple access techniques such as Time Division Multiple Access (TDMA), Frequency Division Multiple Access (FDMA), Code Division Multiple Access (CDMA), and Space-Division Multiple Access (SDMA).
In still another application of MIMO technologies, ST coding and decoding techniques may be adopted in optical fiber-based communications. In such applications, an optical transmitter may implement a ST encoder to distribute data flows over the polarization states of the electrical field of the optical wave or over the different propagation modes in the presence of a multi-mode optical fiber. An optical receiver may implement a ST decoder to recover the transmitted data by the optical transmitter. The use of ST coding and decoding techniques in optical communications may enable for providing high transmission rates over long distances and mitigating dispersion losses and impairments of the optical transmission medium.
Whether in wireless or optical communications applications, ST coding and decoding techniques may be combined with multicarrier modulation techniques. This is the case in the examples of OFDM-MIMO and FBMC-MIMO systems based respectively on OFDM (Orthogonal Frequency Division Multiplexing) and FBMC (Filter Bank Multi-Carrier) modulations for mitigating frequency-selectivity, interference and delays.
An important challenge of MIMO communication systems relates to the complexity and energy consumption of the signal processing at transceiver devices. In particular, a major and demanding challenge concerns the development of Space-Time decoders that provide optimal decoding performance while requiring low computational complexity and energy consumption.
A Space-Time decoder implemented in a receiver device is configured to determine, from the received signal and a channel matrix, an estimation of the originally conveyed information symbols. The decoder performs a comparison between the received signal and the possible values of the transmitted vector of information symbols. In the presence of equally probable information symbols, optimal decoding performance is obtained by applying the Maximum Likelihood (ML) decoding criterion. An ML decoder provides optimal performance in terms of the probability of decoding error and the achievable transmission rates.
The ML estimation problem can be solved using two different but equivalent representations of the MIMO system: a lattice representation and a tree representation.
Using the lattice representation, a MIMO system may be associated with a lattice generated by the channel matrix. Each possible value of the vector of information symbols may be represented by a point in this lattice. The received signal may be seen as a point of this lattice disturbed by a noise vector. Solving for the ML solution thus amounts to solve a closest vector problem in the lattice of a generator matrix the channel matrix. The ML solution corresponds in this case to the nearest lattice point to the received signal in the sense of the minimization of the Euclidean Distance. The computational complexity of finding the ML solution depends on the number of examined lattice points during the search.
In practice, solving the closest vector problem may be performed through a search in a decoding tree obtained through a QR decomposition of the channel matrix. Each possible value of the vector of information symbols may be represented by a path in the decoding tree. Each path being associated with a metric designating the Euclidean Distance between the received signal and the signal corresponding to the vector of information symbols associated to this path. In this case, solving for the ML solution reduces to solve for the path in the decoding tree having the lowest metric. The computational complexity of the tree-search is proportional to the number of visited nodes during the tree-search which depends on the number of nodes at each level and the total number of levels of the decoding tree.
Based on these two representations, several implementations of ML ST decoders have been proposed. A basic decoding method uses an exhaustive search to find the ML solution. Although they provide optimal performance, exhaustive search-based implementations require intensive processing and storage capabilities that may exceed the available ones, in particular in the presence of high-dimensional modulation schemes and/or high number of antennas in both ends of the MIMO system.
Alternatively, ML sequential decoding schemes may be implemented to provide optimal performance while requiring fewer computational and storage resources than the exhaustive search-based methods. Based on the tree representation of the MIMO system, ML sequential decoders may be categorized into three classes depending on whether they use a depth-first, a breadth-first or a best-first tree-search strategy.
Depth-first strategy-based sequential decoders comprise the Sphere decoder disclosed for example in “E. Viterbo and J. Boutros, A universal lattice code decoder for fading channels, IEEE Transactions on Information Theory, 45(5):1639-1642, July 1999”.
Breadth-first strategy-based sequential decoders comprise the Stack decoder disclosed for example in “R. Fano. A heuristic discussion of probabilistic decoding, IEEE Transactions on Information Theory, 9(2):64-74, 1963”.
Best-first strategy-based sequential decoders comprise the SB-Stack decoder disclosed for example in “G. R. Ben-Othman, R. Ouertani, and A. Salah, The spherical bound stack decoder, In Proceedings of International Conference on Wireless and Mobile Computing, pages 322-327, October 2008”.
Depth-first-based decoders, in particular the Sphere decoder, are among the widely used ML sequential decoders. Using the lattice representation of the MIMO system, the Sphere decoder reduces the search space for the ML solution to a spherical region centered at the point representing the received signal (which is not a lattice point). Departing from an initial sphere radius value, the Sphere decoder searches for a first lattice point associated with one of the possible values of the vector of information symbols (also referred to hereinafter as a ‘valid lattice point’) inside a spherical region having a radius equal to the initial sphere radius. Upon finding a valid lattice point, the value of the sphere radius is updated to the value of the Euclidean distance between the lattice point found in the spherical region and the point representing the received signal. This sphere-constrained search and the radius update are performed iteratively until finding the ML solution which corresponds to the smallest sphere that comprises a valid lattice point and that is centered at the point representing the received signal.
This search space limitation may be seen, using the tree representation of the MIMO system, as a limitation of the number of visited nodes in the tree. The radius of the spherical search region determines bound limits on the visited nodes at each level of the decoding tree. Only nodes that belong to the intervals imposed by these bound limits are visited during the tree-search process. Limiting the search space under the Sphere decoding strategy enables a reduction on the computational complexity of searching for the ML solution compared to some sequential decoders such as the Stack decoder.
Solutions to reduce the complexity of the Sphere decoder have been explored from various angles. For example, a method for selecting the initial radius has been proposed in “W. Zhao and G. B. Giannakis, Sphere Decoding Algorithms with Improved Radius Search, IEEE Transactions on Communications, 53(7):1104-1109, July 2005”. Reordering techniques for speeding up the convergence of the Sphere decoding through rearranging the components of the channel matrix have been disclosed for example in “W. Zhao and G. B. Giannakis, Reduced Complexity Closest Point Decoding Algorithms for Random Lattices, IEEE Transactions on Wireless Communications, 5(1):101-111, January 2006”.
Although such solutions provide implementations of the Sphere decoding algorithm with reduced complexity, their common radius update method may not be sufficient in the presence of high dimensional and/or dense lattices. It may induce an increasing computational complexity in addition to longer delays for the convergence of the decoding process. There is thus a need for radius updating techniques which enable a fast decoding convergence and reduced decoding complexity, especially for high-dimensional systems involving a high number of transmit and/or receive antennas.